Increasing Bandwidth in a Downhole Network

ABSTRACT

A system, apparatus and method to increase bandwidth in a physically segmented downhole network are described herein.

CROSS REFERENCE TO RELATED APPLICATIONS

This application is a non-provisional application of provisionalapplication 60/766,875, filed Feb. 16, 2006, entitled “PhysicallySegmented Logical Token Network” and provisional application 60/775,152,filed Feb. 21, 2006, entitled “Node Discovery in Physically SegmentedLogical Token Network”, and claims priority from both provisionalapplications. Both of the above referenced provisional patentapplications are hereby incorporated by reference herein for all theydisclose.

BACKGROUND OF THE INVENTION

1. Field of the Invention

Embodiments of the present invention relate to the fields of dataprocessing and data communication. More specifically, embodiments of thepresent invention relate to methods and apparatus for increasing datacommunication bandwidth in a downhole networking environment.

2. Description of the Related Art

Advances in data processing and data communication technologies have ledto the development of a wide variety of data communication arrangements,including but not limited to various on-chip, on-board and system buses,as well as local and wide area networks. These data communicationarrangements are deployed in a wide range of applications, including butnot limited data communications in harsh environments, such as oil andgas exploration.

As exploration and drilling technology matures, the need to accuratelycommunicate data with components located in a downhole tool string isvital to continued success in the exploration and production of oil,gas, and geothermal wells. Downhole tool string configurations oftenincorporate multiple downhole drilling and exploration devices forreporting temperature, pressure, inclination, salinity, and otherfactors at or near real-time to the surface.

Due to the cost of replicating the transmission segments and thedifficulty in transmitting data across the barriers, the downholenetwork is typically limited to only a single physical cable orcommunication channel, thereby limiting bandwidth. Moreover, thecommunication channel must be durable to withstand the extremeconditions in a downhole network.

With respect to power resources, each network node is reliant ondownhole generators and other on-board power reserves, which often maynot be recharged until the node is physically removed from the downholeenvironment. These power reserves are gradually depleted with everytransmission generated or relayed by the network node. Each datatransmission between network nodes typically passes through severalintervening drill pipes linked in the drill string by transmissionsegments and uses both bandwidth and power before reaching theirdestination.

Unfortunately, networks associated with the downhole tool string oftenhave unreliable connections along with the limited bandwidth andrestricted power resources. A variety of factors including formationfluids, drilling mud, stress corrosion, and erosion from cuttings maycontribute to the unreliability of drill string connections. As a resultof these and other factors there is likelihood that various errors ordata corruption may be introduced into the data or prevent/delaydelivery of the data. Moreover, a network will often organizetransmitted data in a manner that enables delivery to each network node,such as physical (PHY) layer frames and/or a media access layer (MAC)layer datagrams. Due to the previously identified data corruption, thePHY layer frames and/or the MAC layer datagrams commonly undergo dataverification including among other things error-checking to identifycorrupt data. Unfortunately, PHY frames and MAC datagrams with errorsare entirely discarded by the traditional network protocols and devices,which in the downhole environment is an extremely costly result.

Accordingly, the corrosive and mechanically violent nature of a downholedrilling environment, combined with the limited ability to communicatewith or to deliver power to network nodes at the bottom of the drillstring are factors that make the task of providing a commerciallyacceptable downhole network for bidirectional communication between thesurface and the components in the drill string difficult for theindustry to overcome.

BRIEF DESCRIPTION OF THE DRAWINGS

The present invention will be described by way of exemplary embodiments,but not limitations, illustrated in the accompanying drawings in whichlike references denote similar elements, and in which:

FIG. 1 illustrates a block diagram of a network node data communicationarrangement in accordance with various embodiments of the presentinvention;

FIG. 2 illustrates a block diagram of a data structure, in accordancewith various embodiments of the present invention;

FIG. 3 illustrates a block diagram of a source node and a destinationnode data communication arrangement in accordance with variousembodiments of the present invention;

FIG. 4 illustrates a network node suitable for practicing variousembodiments of the present invention as presented in FIG. 1 and in FIG.5 in further detail, in accordance with various embodiments;

FIG. 5 illustrates a downhole networking environment suitable forpracticing various embodiments of the present invention;

FIG. 6 illustrates a flowchart view of a portion of the operations of adestination network node in accordance with various embodiments; and

FIG. 7 illustrates a flowchart view of a portion of the operations of asource network node in accordance with various embodiments.

DETAILED DESCRIPTION OF THE INVENTION AND THE PREFERRED EMBODIMENT

Various embodiments, described below, have been developed in response tothe current state of the art and, in particular, in response to thepreviously identified problems and needs of downhole networks forbidirectional communication between the surface and the components inthe drill string that have not been fully or completely solved bycurrently available systems and communication protocols for downholenetworks.

Embodiments provide methods to reduce time, power, size, andcomputational cycles required for data communication and therebyincrease available bandwidth between network nodes or access points orphysical mediums on a network. As repeat latency in the network nodes isdecreased available bandwidth is increased.

In at least one embodiment, a ‘token protocol’ based approach ispresented, where status from attached and active node may be reportedand recorded in a topology without fundamentally impacting theunderlying frameworks being used by the network and enablingoptimizations in addressing and delivering data being transmitted.Moreover, as transmitted data is received by all nodes in the network,error checking may also be performed by the network nodes at the NETlayer, instead of or in addition to the lower layers, such as the MAClayer. More specifically, in various embodiments, each network node mayavoid checking destination addresses for data at the MAC layer andfurther avoid performing error checking on the body of the data at theMAC layer.

In the following detailed description, reference is made to theaccompanying drawings which form a part hereof wherein like numeralsdesignate like parts throughout, and in which are shown, by way ofillustration, specific embodiments in which the invention may bepracticed. It is to be understood that other embodiments may be utilizedand structural or logical changes may be made without departing from thescope of the present invention. Therefore, the following detaileddescription is not to be taken in a limiting sense, and the scope of thepresent invention is defined by the appended claims and theirequivalents.

Reference in the specification to “one embodiment” or “an embodiment”means that a particular feature, structure, or characteristic describedin connection with the embodiment is included in at least one embodimentof the invention. The appearances of the phrase “in one embodiment” invarious places in the specification do not necessarily all refer to thesame embodiment, but it may. The phrase “A/B” means “A or B”. The phrase“A and/or B” means “(A), (B), or (A and B)”. The phrase “at least one ofA, B, and C” means “(A), (B), (C), (A and B), (A and C), (B and C) or(A, B and C)”. The phrase “(A) B” means “(A B) or (B)”, that is “A” isoptional.

Referring to FIG. 1, a downhole network 100 in accordance with variousembodiments is illustrated. The downhole network 100 includes apredecessor node 110, a network node 120, and a successor node 130. Inone embodiment, the network node 120 receives and/or transmits data 150in both directions in the downhole network 100. Data 150, in anembodiment, may also be generated by the network node 120 fortransmission to at least one of the other nodes, selected from thepredecessor node 110 and the successor node 130.

More specifically, data 150 is received from other network nodesphysically positioned above and/or below the network node 120 and isthen transmitted to other network nodes in the downhole network 100. Inone embodiment, the network node 120 receives data 150, from animmediately coupled predecessor node 110 and transmits the data 150 toan immediately coupled successor node 130. In general, the network node120 will transmit received data 150 to the other immediately couplednodes, such as the successor node 130 or the predecessor node 1 10.Occasionally, an orphan node 140 in the downhole drilling string willtransition to become an active member of the downhole network 100.

In various embodiments, the data 150 is organized and/or encapsulated inat least one frame 160, at least one datagram 170, and may also includeat least one packet 180. Each frame may include frame header informationand/or a frame payload. In one embodiment, the frame payload includes atleast one datagram 170. Accordingly, in one embodiment, at least onedatagram 170 is encapsulated in a single physical (PHY) layer frame 160.

In various embodiments, at least one network (NET) layer packet 180 isencapsulated in a media access (MAC) layer datagram 170. Each datagramincludes datagram header information and a datagram payload. Thedatagram payload includes at least one packet 180. In variousembodiments, each of the at least one packet 180 includes packet headerinformation and a packet payload. The packet payload includes a portionof the encapsulated data 150.

In various embodiments, the network node 120 is configured to performerror checking of the data 150. In one embodiment, each packet 180 isconfigured to individually provide error checking, independent of thedatagram 170 and/or the frame 160. The data verification informationnecessary to perform the error checking is provided for at least one ofthe packet header information and the packet payload containing theencapsulated data.

Referring now to FIG. 2, a data structure is shown, in accordance withvarious embodiments. The data 210 is organized and/or encapsulated in atleast one PHY frame 220, at least one MAC datagram 230, and may alsoinclude at least one NET packet 240.

In various embodiments, each PHY frame 220 includes PHY frame headerinformation 225 and a frame payload including the at least oneencapsulated MAC datagram 230. In various embodiments, PHY frame headerinformation 225 includes data quality verification for at least theportion of the PHY frame storing the PHY frame header information 225.

In various embodiments, each MAC datagram 230 includes MAC datagramheader information 235 and a MAC datagram payload. The MAC datagrampayload of the MAC data gram 230 includes at least one NET packet 240.In various embodiments, MAC datagram header information 235 includesdata quality verification for at least the portion of the MAC datagram230 storing the MAC datagram header information 235.

In one embodiment, each NET packet 240 a includes NET packet headerinformation 250 and a NET packet payload 245. The NET packet headerinformation 250 may include a destination node identifier 251,destination port information 253, a source node identifier 255, sourceport information 257, and packet length information 259. The NET packetpayload 245 generally includes at least a portion of the encapsulateddata 210.

In one embodiment, the NET packet 240 a is configured to individuallyprovide error checking and/or data verification for at least one of theNET packet header information 250 and the NET packet payload 245,independent of the MAC datagram 230 and/or the PHY frame 220.Alternatively, one embodiment determines packet validity based onhierarchical error checking and/or data verification of PHY frame headerinformation, MAC datagram header information, and NET packet headerinformation followed by error checking and/or data verification of theNET packet payload.

Resynchronization of parsing of the NET packets 240 enables the systemto recover uncorrupted NET layer packets 240 from corrupted MACdatagrams 230 and/or PHY frames 220. In various embodiments, a uniquedistance indicator, such as a hop count 270, is added to the Net packetand used for resynchronization upon detection of data corruption. As thehop count 270 in a downhole network 100 is unique for each node, it maybe used to identify the node and also to provide a relative distance oftransmitting node that originally generated the packet from thereceiving node.

Accordingly, a modified NET layer packet 240 b is generated from the Netpacket 240 a through data manipulation to remove naturally occurringdata that also matches the unique identifier. One technique of datamanipulation includes bit and/or byte stuffing. Once a value is chosenfor the identifier, the other normally occurring instances of theidentifier are removed and replaced by a replacement indicator togenerate a stuffed packet 275. Upon reception of the data, the stuffedpacket 275 may be unstuffed back to the original Net packet 240 a byremoving the replacement indicators and restoring the original values.

Referring to FIG. 3, a data communication arrangement between a sourcenode 300 a and a destination node 300 c is shown, in accordance withvarious embodiments of the present invention. In one embodiment, thenetwork node 300 is coupled to a transmission segment 350 and includesan application layer 310, network layer 320, media access layer 330, andphysical layer 340.

In one embodiment, applications residing in the application layer 310receive, generate, store, and transmit data 360. Network layerapplications are configured to encapsulate/unpack data 360 of at leastone packet 370. Media access layer applications are configured toencapsulate/unpack at least one packet 370 of at least one datagram 380.Physical layer applications are configured to encapsulate/unpack atleast one datagram 380 of at least one frame 390. The physical layerapplications are also configured to transmit and/or to receive at leastone frame 390 via a transmission segment 350.

In one embodiment, a network node 300 may be configured to operate aseither a source node 300 a and/or a destination node 300 b/300 c. Thesource node 300 a encapsulates and transmits data to at least onedestination node 300 c in a physically segmented logical token network.In the illustrated embodiment, the physical layer 340 a of the sourcenode 300 a transmits the at least one frame 390 via the transmissionsegment 350. The transmission segment 350 is also coupled to a potentialdestination node 300 b. The potential destination node 300 b isconfigured to receive at least one frame 390 at a physical layer 340 band to transmit the received at least one frame 390 onto the next node,such as the destination node 300 c.

Various embodiments of the present invention perform NET layer parsingand resynchronization, which enables each of the network nodes (e.g.,300 a, 300 b, and 300 c) to recover NET layer packets 370 from a PHYframe 390 and/or a MAC datagram 380 even in some cases after datacorruption has occurred within a portion of the PHY frame 390. Morespecifically, data recovery may be accomplished by parsing packets forindividual links at the NET layer 320. The NET layer packet 370 issimilar to the MAC layer datagram 380 in that both may include a headerand a payload. In one embodiment, a cyclic redundancy check (CRC) isassociated with each NET layer packet 370, so that a corrupted PHY frame390 and/or a MAC datagram 380 may still include some recoverable NETlayer packets 370. A CRC is often computed and appended by atransmitting node to a NET layer packet 370 before transmission orstorage, and verified afterwards by the recipient node to confirm thatno changes occurred in transit. In various embodiments, CRCs areprovided for both the header and the payload of NET layer packets 370,where the MAC layer datagram 380 and PHY frame 390 only have a CRC foreach respective header portion. The header for the NET layer 320provides addressing and other information about how to handle the datain the NET payload portion of the NET layer packet 370. In oneembodiment, header portion errors in either a MAC layer datagram 380and/or a PHY frame 390 are recoverable, so that only detection of a CRCerror in a NET layer packet 370 will result in the packet being thrownout.

As such, the network architecture differs from other networks in thatvarious embodiments perform error checking using a CRC at the NET layer320. Essentially, this configuration may allow corrupted packets to passthrough the PHY layer 340 and MAC layers 330, which allows for potentialrecovery of data in corrupted MAC layer datagrams 380 and/or a PHYframes 390 thereby saving bandwidth by reducing retransmission andincreasing the overall speed of the network. As NET layer packets 370are exchanged between the NET layer 320 and the MAC layer 330 a CRC isinserted at the end of the header and the payload. As the NET layerpackets 370 are received again from the MAC layer 330 the CRC is checkedto ensure the data has not been corrupted. NET layer packets 370 with abad CRC are thrown out. In one embodiment, error checking is performedby a NET layer CRC device.

Once data corruption has been detected, resynchronization of the parsingat the NET layer 320 enables the system to recover uncorrupted NET layerpackets 370. In one embodiment, resynchronization may be accomplished bydetecting a unique identifier, such as a Packet Synchronization Sequence(PSS), at the start of each NET layer packet 370. Other uniqueidentifiers may also be provided between each MAC layer datagram 380and/or PHY frame 390. In various embodiments, the unique identifier isgenerated through data manipulation to remove naturally occurring datathat also matches the unique identifier. One technique of datamanipulation includes bit and/or byte stuffing each NET layer packet370. Once a value is chosen for the identifier, normally occurringinstances are removed and replaced by a replacement indicator. Uponreception of the data, the replacement indicator is removed and theoriginal value is restored. If an error is detected during reception(e.g., CRC), then scanning for the unique identifier provides variouspossibilities. A bit sequence matching the unique identifier will eitheridentify the start of the next NET layer packet 370 or a corrupted valuein the data stream, calculation of the CRC will determine which case ispresent. In this manner, the receiving node may resynchronize parsing ofthe NET layer 320 despite the presence of errors and/or data corruption.

In one embodiment, Zero-bit insertion, a particular type of bitstuffing, is used to ensure that a PSS doesn't incidentally appear inthe contents of the PHY frame 390, MAC layer datagram 380, and/or NETlayer packet 370. Once a bit sequence is selected, any naturallyoccurring sequence needs to be removed from the data. For example, if“01111110” was selected as the PSS, the data would need to be altered toensure that a sequence of 6 consecutive “1” bits are not present in theframe data so as to avoid possible confusion for the PSS. In oneembodiment, zero-bit insertion is used to prevent such a sequence fromoccurring. More specifically, if a series of five “1” bits are found inthe data by the sending node a “0” bit is inserted after the fifth “1”bit, thereby limiting the maximum possible run of “1” bits to five. At areceiver node, if a series of five “1” bits is received, the subsequent“0” bit is removed to recover the original data.

When the receiver node finds “0111111” two possible outcomes may occur.To determine which, the next bit is checked. If the bit is a “0” (i.e.“01111110”) a valid PSS is assumed to have been received. If the bit isanother “1” (i.e. “01111111”) then some corruption must have occurredduring transmission as that data sequence cannot have been transmittedaccording to the selected bit sequence for the PSS. In the describedexample a “0” bit would have been inserted after the fifth “1” bit.Should corruption during transmission result in the PSS being receivedas part of the data, it is more than likely that the failed CRC wouldmean that both packets may be suspect to data corruption.

Referring to FIG. 4, a network node 400 is shown in further detail, inaccordance with various embodiments. An exemplary downhole network node400 suitable for practicing various embodiments as presented in FIGS. 1,3, and 5 is shown in FIG. 4, a block diagram of a downhole network node400 having at least one communication interface 420 and a communicationmodule 410. The network node 400 includes at least one communicationinterface 420, a communication module 410, a packet router 430, a localprocessing module 440, and a local data acquisition module 450, coupledto each other as shown.

The illustrated communication module 410, such as a modem, may beconnected to the network (see e.g., network 510 in FIG. 5) in at leasttwo directions via transmission segments (see e.g., transmissionsegments 350 in FIG. 3 and/or integrated transmission drill pipe 570 inFIG. 5). However, in alternate configurations the communication module410 may only be connected to the network 510 in one direction. Thecommunication module 410 may modulate digital bits on an analog signalto transmit data packets from the network node 400 on the network 510and demodulates analog signals received from the network 510 intodigital data packets. In various embodiments, the communication module410 may include a storage medium 470 to temporarily store data inconjunction with transmission.

As previously indicated, a network node 400 may also employ a timingdevice to calculate whether time-out thresholds have been reached. Thetiming device may include multiple timers individually assigned to eachcommunication interface 420 or to the communication module 410 ingeneral.

The network node 400 may comprise a packet router 430 that receivespackets from the communication module 410 and forwards them to one ormore of a local processing module 440, a local data acquisition module450, or a peripheral port 460. Packets to be transmitted on the network510 may also be forwarded to the communication module 410 from thepacket router 430.

The downhole network node 400 includes a peripheral tool port 460, whichallows the downhole network node 400 to collect data from associatedtools, packetize the tool data and transmit it to the top of the well.

In one embodiment, a downhole network node 400 includes a suitableportable power source 480. Often the downhole network node 400 will needto be self-reliant on multiple battery packs 490 for power requirements.In one embodiment some of the battery packs 490 may be allocated toindividual components of the downhole network node 400 based in part onthe function provided by the component requesting power. For example, aportion of the battery packs 490 could be dedicated to transmittingreceived packets (e.g., 410 and 470) to the next node. Another portioncould be dedicated to maintaining the local processing 440 and relatedcomponents (e.g., 430, 450, and 460). In one embodiment, an attachedtool may either draw power from the node or provide a source to rechargethe batteries.

Referring to FIG. 5, a drilling operation 500 with a downhole networkingenvironment suitable for practicing various embodiments of the presentinvention is shown. Accordingly, when drilling boreholes into earthenformations, the drilling operation 500 as shown in FIG. 5 may be used.The drilling operation 500 may include a drilling rig 505, an integrateddownhole physically segmented logical token network 510, and a tubulardrill string 560 having a bottom hole assembly 580. The bottom holeassembly 580 typically forms the bottom of the drill string 560, whichis typically rotatably driven by the drilling rig 505 from the surface.In addition to providing motive force for rotating the drill string 560,the drilling rig 505 also supplies a drilling fluid under pressurethrough the tubular drill string 560 to the bottom hole assembly 580.Other components of the bottom hole assembly 580 include a drill collar575, a drill bit 590, and various other down hole components. Inoperation, the drill bit 590 is rotated and weight is applied. Thisaction forces the drill bit 590 into the earth, and as the bit isrotated, a drilling action is effected.

The downhole physically segmented logical token network 510 includes afirst end node and/or a top node 520, a plurality of transmissionsegments integrated into the drill pipe 570, a plurality of intermediatenodes and/or middle nodes 530 and 540, and the second end node and/or abottom node 550. The downhole network 510 provides an electricalinterconnection between the top node 520 and the bottom node 550. Thetop node 520 may, in accordance with at least one embodiment, be acomponent of a server 515. The server 515 is positioned near the top ofthe well in one embodiment and may relay reconstituted well informationgathered from various components in the downhole network 510 to avariety of interested client computing devices across an area network,such as the Internet, using traditional methods known in the art.

The downhole network 510 operates similar to the previously describednetwork of FIG. 1, although features may be described in a moredirectional nature, for example, in one embodiment of the downholenetwork 510 a frame may include data associated with a logical tokenthat may be passed up and down the downhole network 510. In oneconfiguration, a first token may be designated as a down-token, and asecond token may be designated as an up-token. Other directionaladaptations include referring to the first end node as a top end nodeand the second end node as a bottom end node. As such, in oneembodiment, the down-token may be generated by the top node 520 that theindividual nodes (530, 540, and 550) are cyclically and/or periodicallyallowed to claim. In one embodiment that tries to equalize the number oftransmission opportunities for each node, the up-token is a logicaltoken that only the top node 520 is allowed to claim.

Although the down-token has been characterized in one embodiment to bean equivalent to the first token and the up-token is characterized as anequivalent to the second token, it is clear to one of skill in the artthat other characterizations are possible and should be consideredwithin the scope of the instant invention. For example, the roles of theup and down tokens could be reversed. Moreover, the up-token and thedown-token could be functionally the same logical token. In such aconfiguration, a directional modifier may be assigned at each node basedin part on which communication interface received the token.

As previously indicated, a downhole network 510 is often a difficult andor discontinuous operating environment. For example, as the wellincreases in depth, new tubular drill pipe is added to the drill stringbelow the top node 520, temporarily interrupting data communicationsbetween the nodes. Additionally, portions of the drill string may becometemporarily unavailable due to mechanical stresses related to drillingoperations. As a result in one embodiment, each intermediate node (530and 540) may become the bottom node 550 when no data and/or token arereceived from a successor immediately coupled node for a designated timeperiod based in part on the number of nodes in the downhole network 510.

In various embodiments, the top node 520 is configured to selectivelygenerate another down-token even if the up-token is not received withina designated time period. The designated time period is often based inpart on the number of known active nodes in the downhole network.

Depending on the importance of the data being collected by the portionof the network 510 in the bottom hole assembly 580, temporarilyinterrupting data may be unacceptable. In these situations the networkmay employ multiple sub-networks to divide the network 510 and continuedata communication. For example the illustrated network 510 may bedivided into two sub-networks, the portion of the network 510 in abottom hole assembly 580 and the top portion of the drill string 560associated with a sub-network 585. In various embodiments, an entiresub-network, e.g. all the nodes of network 510, may transition to anorphan operational status to conserve power or preserve data throughactive manipulation of timing devices associated with the end node ofthe sub-network.

Turning now to FIGS. 6-7, the particular methods of the invention, inaccordance with various embodiments, are described in terms of computerfirmware, software, and hardware with reference to a series offlowcharts. In various embodiments, portions of the operations to beperformed by network devices may constitute state machines or computerprograms made up of computer-executable instructions. Describingportions of the operations by reference to a flowchart enables oneskilled in the art to develop programs including instructions to carryout the illustrated methods on suitably configured network devices(e.g., a processor of the network device executing instructions from acomputer-accessible media).

In various embodiments, the computer-executable instructions may bewritten in a computer programming language or may be embodied infirmware logic. If written in a programming language conforming to arecognized standard, such instructions can be executed on a variety ofhardware platforms and for interface to a variety of operating systems.In addition, the present invention is not described with reference toany particular programming language. It will be appreciated that avariety of programming languages may be used to implement the teachingsof the embodiments as described herein. Furthermore, it is common in theart to speak of software, in one form or another (e.g., program,procedure, process, application, etc.), as taking an action or causing aresult. Such expressions are merely a shorthand way of saying thatexecution of the software by a network device causes the processor ofthe computer to perform an action or a produce a result.

Referring to FIG. 6, a portion of the operations of a network nodeoperating as a potential destination node 600 is shown, in accordancewith various embodiments. The network node operating as a potentialdestination node 600 receives data in block 610. The received data ismodified in block 620 to include relative distance from source nodeupdated by the network node operating as a potential destination node600. In one embodiment, the data is encapsulated in at least one framehaving at least one datagram having at least one packet. The potentialdestination node 600 begins to transmit the modified received data inblock 630. In one embodiment, transmission of the frame to the next nodemay begin as soon as the header is modified by the potential destinationnode 600.

The network node operating as a potential destination node 600determines the desired destination of data in block 640. In oneembodiment, each frame is parsed into at least one datagram, and eachdatagram is parsed into at least one packet of the received data inblock 650. The received data is verified in block 660. In oneembodiment, the packet having packet header information and a packetpayload also includes data quality information to verify the receiveddata. The data quality information may be associated, individually orcollectively, with the packet header information and/or the packetpayload. In one embodiment, the destination identified in the packetheader information is verified first by the network node operating as adestination node 600 in block 640 and if the current node is a validdestination, the contents of the packet payload is subsequently verifiedin block 660. Alternatively, both the packet header information and thepacket payload could be verified together.

In one embodiment, the packet data quality information is independent ofany data quality verification provided by encapsulated datagram headerinformation and/or frame header information. This separation allows thenetwork node operating as a potential destination node 600 toselectively ignore data errors in the datagram header information and/orthe frame header information, if recoverable data is available in thepackets associated with the corrupted frame and/or datagram.

Referring to FIG. 7, a portion of the operations of a network nodeoperating as a source node 700 is shown, in accordance with variousembodiments. In block 710, the network node operating as a source node700 broadcasts a request for status information to other active nodes onthe network. In one embodiment, the network node operating as a sourcenode 700 is a server node and is positioned at the top of thewell/downhole network. In one embodiment the request includes use of astatus token to request responses from attached nodes. As responses arereceived in block 720 by the network node operating as the source node700, the information is used to maintain a corresponding networktopology table in block 730.

In one embodiment, the topology table may include a short networkidentifier (NID) for local communication in the downhole network, alonger global identifier (GUID) for addressing the node from outside thedownhole network, and a unique relative distance between the source node700 and each node. The source node 700 verifies the local identificationin block 740, the relative distance in block 750, and the globalidentification in block 780. In the downhole environment, the relativedistance, such as a hop counts and/or timestamps, may be used as aunique reference for each node. In one embodiment, the NID is a uniquenumber that identifies the node on the downhole network and may be usedfor addressing the link from within the network. The GUID is a largerunique number than the NID and identifies the node outside of thedownhole network.

A top-hole interface (THI) associated with the source node 700 maintainsa topology table to map each node's GUID to the node's NID. The topologytable may update the relative position of nodes based on the receivedresponses to the information request. Upon detecting topology changes inblock 770, the source node 700 periodically generates and distributesthe detected changes in blocks 780 and 790 to attached softwarecomponents outside of the downhole network. In one embodiment, a messageor command may be sent from outside to a node of the downhole networkvia the THI. The THI translates the GUID into the respective node's NIDand the command into a port number and payload, and passes the packet(s)down the downhole network. NET packets with a NID different from thenode's NID are ignored by the NET layer of the potential destinationnodes. In various embodiments, the port numbers may specify a specificfunction to be performed using the information in the payload. Eachdevice above the NET layer recognizes port numbers that correspond tofunctions performed by the device. These devices typically only usepackets with recognizable port numbers and ignore others.

Although specific embodiments have been illustrated and describedherein, it will be appreciated by those of ordinary skill in the art andothers, that a wide variety of alternate and/or equivalentimplementations may be substituted for the specific embodiment shown inthe described without departing from the scope of the present invention.This application is intended to cover any adaptations or variations ofthe embodiment discussed herein. Therefore, it is manifested andintended that the invention be limited only by the claims and theequivalents thereof.

Whereas the present invention has been described in particular relationto the drawings attached hereto, it should be understood that other andfurther modifications apart from those shown or suggested herein, may bemade within the scope and spirit of the present invention.

1. An apparatus comprising: at least one communication interface configured to connect the apparatus to a physically segmented logical token network; and a communication module, coupled to the at least one communication interface, configured to encapsulate data with packet header information in at least one packet and to encapsulate the at least one packet with datagram header information in at least one datagram and to encapsulate the at least one datagram with frame header information in a frame, the communication module having a storage medium to temporarily store the frame, with each packet including at least a portion of the data and providing at least one of: (a) destination address identification in the encapsulated packet header information of the packet, independent of whether any destination address identification is provided in the encapsulated datagram and/or frame header information; and (b) data quality verification in the encapsulated packet header information of the packet, independent of whether any data quality verification is provided in the encapsulated datagram and/or frame header information.
 2. The apparatus of claim 1, wherein the frame is associated with a physical layer of a communication protocol, and each datagram is associated with a media access control layer of the communication protocol.
 3. The apparatus of claim 1, wherein the at least one communication interface is configured to transmit data received from a node immediately preceding the apparatus on the physically segmented logical token network, to a node immediately succeeding the apparatus on the physically segmented logical token network, before the apparatus determines a destination and/or quality of the received data.
 4. The apparatus of claim 1, wherein the data quality verification includes at least one of length information, parity information, and dynamic error checking and correcting information.
 5. The apparatus of claim 4, wherein the communication module is configured to determine data quality of received packets based on data quality verification provided in packet header information encapsulated in the received packets, regardless whether data quality verification is already provided in the datagram header information and/or the frame header information encapsulated in a received datagram and/or frame encapsulating the received packets.
 6. The apparatus of claim 1, wherein the destination address identification includes a local network identifier of a destination node without a global device identifier of the destination node.
 7. The apparatus of claim 1, wherein each packet further provides origination address identification independent of whether origination address identification is provided in the encapsulated datagram and/or frame header information.
 8. The apparatus of claim 7, wherein the origination address identification includes a local network identifier of a source node and/or a relative distance of the source node from the apparatus.
 9. A communication arrangement, comprising: a source node configured to encapsulate data in at least one packet, the at least one packet encapsulated in a datagram, the datagram encapsulated in a frame, each packet individually providing addressing and/or error checking for the encapsulated data independent of the datagram and/or the frame; and at least one destination node coupled to the source node to receive the data, the source and destination nodes employ at least a token to facilitate data communication among the nodes in a physically segmented logical token network.
 10. The communication arrangement of claim 9, wherein a server node is selected from the group of the source node and the at least one destination node.
 11. The communication arrangement of claim 10, wherein the server node receives all data transmissions and generates a topology table based in part on the received data.
 12. The communication arrangement of claim 11, wherein the topology table identifies the operational state of each node in the physically segmented logical token network.
 13. The communication arrangement of claim 10, wherein the server node initiates a periodic census of the active network nodes and in response each active destination node transmits a packet to the server node including node identification information.
 14. The communication arrangement of claim 13, wherein the node identification information includes a local network identifier associated with the active destination node and a relative distance to the source node.
 15. A method comprising: receiving a frame containing encapsulated data and frame header information at a network node from a node immediately preceding the network node on a physically segmented logical token network; and prior to determining a destination for the encapsulated data contained in the received frame, transmitting the received frame to a node immediately succeeding the network node, including a modified frame header information, if any.
 16. The method of claim 15, wherein the modified frame header information includes a relative distance to a source node.
 17. The method of claim 16, further comprises incrementing the relative distance in the modified frame header prior to transmitting the received frame to the node immediately succeeding the network node.
 18. The method of claim 15, wherein the receiving the frame further comprises receiving a network access authorization to access and to transmit at least one frame on the physically segmented logical token network.
 19. The method of claim 18, wherein the network access authorization is a token.
 20. The method of claim 19, wherein the token determines whether to modify frame header information to govern future network access and transmission by the succeeding node.
 21. The method of claim 15, wherein the encapsulated data includes at least one encapsulated packet encapsulated within an encapsulated datagram encapsulated within the received frame.
 22. The method of claim 21, further comprises verifying quality of the encapsulated data within the encapsulated packet independent of any data quality verification provided by the encapsulated datagram and/or the received frame.
 23. The method of claim 22, wherein the verifying quality of the encapsulated data is performed subsequent to the transmission of at least part of the frame header information.
 24. The method of claim 21, further comprises determining a destination for the encapsulated data independent of header information associated with the encapsulated datagram and/or the received frame.
 25. The method of claim 24, further comprises determining whether to transmit the received frame prior to the determining the destination for the encapsulated data.
 26. The method of claim 24, wherein the determining the destination is performed subsequent to the transmission of at least part of the frame header information.
 27. The method of claim 15, wherein the determining whether to transmit the received frame is based on a topological position of the network node on the physically segmented logical token network. 